Method and apparatus to inject noise in a network system

ABSTRACT

An apparatus, system, and method are disclosed for injecting noise onto a link of a network. The apparatus, system, and method include, providing a noise injector card, connecting the noise injector card to the link, receiving a control signal to activate the noise injector card, switching a switch of the noise injector card, and injecting noise onto the link.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The disclosure relates to a method, system, and apparatus for performingdiagnostic operations in a computerized network system.

2. Description of the Related Art

Data storage system users may require a high degree of reliability andquick recovery from failures. Some data storage system users may requireprotection from data loss due to natural disasters or equipmentfailures. For example, data storage system users such as financialinstitutions, retailers, and the like may demand a high degree ofreliability for financial transactions, inventory control, etc. Anenterprises storage system (“ESS”), such as the TotalStorage® EnterpriseStorage Server® from IBM®, may be used by financial institutions andothers businesses to store data where reliability is important. Suchsystems may be configured as a network.

For example, an Ethernet network may be used in a data storage system tocouple a plurality of data storage devices. The Ethernet network may beconfigured as a storage area network (“SAN”). The SAN may includecommunication links such as Ethernet cables, wires, switches, andconnectors. Sometimes a marginal Ethernet connection may occur in thedata storage system. When this happens the information stream may bedisrupted causing loss of data. For some data storage system users, suchas a financial institution or health care provider, any loss of data maybe critical. Thus, being able to test the integrity and reliability ofdata storage systems is beneficial.

SUMMARY OF THE INVENTION

The present invention is developed in response to the present state ofthe art, and in particular, in response to the problems and needs in theart that have not yet been fully solved by currently available methods,systems, and apparatuses. Accordingly, the present invention isdeveloped to provide a reliable and cost effective apparatus, system,and method to perform diagnostics on a data storage system while thesystem is intact and active.

The present invention provides a method, system, and apparatus to injectnoise in a communication link of a network. Additionally, the presentinvention provides a reliable and cost effective apparatus, system, andmethod to perform fault simulation on a data storage system while thesystem is intact and active. The present invention further provides acost effective manner to inject noise into a cable such that the systemis still intact, i.e., the cable is not pulled, but the informationstream is disrupted. Thus, the present invention allows testing andverifying that a subsystem can detect, isolate, and handle noise.

In one embodiment, an apparatus of the present invention is presentedfor injecting noise onto a cable or link of a network. The apparatusincludes at least two jacks; a plurality of signal wires connecting thetwo jacks together; a switch connected to the two jacks by at least oneof the plurality of signal wires; a parallel port connected to theswitch via a control signal wire; and a power connector connected to theswitch.

In one embodiment, an apparatus of the present invention is presentedfor injecting noise onto a cable or link of a network. The apparatusincludes at least two ports; a plurality of signal wires connecting thetwo ports together; and a plurality of switches connected to the twoports by the plurality of signal wires.

In one embodiment, a method of the present invention is presented forinjecting noise onto a cable or link of a network. The method includesproving an Ethernet network having an Ethernet infrastructure; embeddinga noise injector card in the Ethernet infrastructure; entering a licensekey into the Ethernet infrastructure; activating the embedded noiseinjector card; and injecting noise onto an Ethernet link.

In one embodiment, a method of the present invention is presented forinjecting noise onto a cable or link of a network. The method includes,providing a noise injector card, connecting the noise injector card tothe link, receiving a control signal to activate the noise injectorcard, switching a switch of the noise injector card, and injecting noiseonto the link.

Reference throughout this specification to features, advantages, orsimilar language does not imply that all of the features and advantagesthat may be realized with the present invention should be or are in anysingle embodiment of the invention. Rather, language referring to thefeatures and advantages is understood to mean that a specific feature,advantage, or characteristic described in connection with an embodimentis included in at least one embodiment of the present invention. Thus,discussion of the features and advantages, and similar language,throughout this specification may, but do not necessarily, refer to thesame embodiment.

Furthermore, the described features, advantages, and characteristics ofthe invention may be combined in any suitable manner in one or moreembodiments. One skilled in the relevant art will recognize that theinvention may be practiced without one or more of the specific featuresor advantages of a particular embodiment. In other instances, additionalfeatures and advantages may be recognized in certain embodiments thatmay not be present in all embodiments of the invention.

These features and advantages of the present invention will become morefully apparent from the following description and appended claims, ormay be learned by the practice of the invention as set forthhereinafter.

BRIEF DESCRIPTION OF THE DRAWINGS

In order that the advantages of the invention will be readilyunderstood, a more particular description of the invention brieflydescribed above will be rendered by reference to specific embodimentsthat are illustrated in the appended drawings. Understanding that thesedrawings depict only typical embodiments of the invention and are nottherefore to be considered to be limiting of its scope, the inventionwill be described and explained with additional specificity and detailthrough the use of the accompanying drawings, in which:

FIG. 1 is a schematic block diagram illustrating a computerized networkenvironment, which may implement the present invention;

FIG. 2 is a schematic block diagram illustrating an embodiment to injectnoise in a computerized network in accordance with the presentinvention;

FIG. 3 is a schematic diagram illustrating an embodiment to inject noisein computerized network accordance with the present invention;

FIG. 4 is a schematic diagram illustrating an embodiment to inject noisein a computerized network in accordance with the present invention;

FIG. 5 is a schematic flow chart diagram illustrating a method to injectnoise in a computerized network in accordance with the presentinvention; and

FIG. 6 is a schematic flow chart diagram illustrating a method to injectnoise in a computerized network in accordance with the presentinvention.

DETAILED DESCRIPTION OF THE INVENTION

Many of the functional units described in this specification have beenlabeled as modules, in order to more particularly emphasize theirimplementation independence. For example, a module may be implemented asa hardware circuit comprising custom VLSI circuits or gate arrays,off-the-shelf semiconductors such as logic chips, transistors, or otherdiscrete components. A module may also be implemented in programmablehardware devices such as field programmable gate arrays, programmablearray logic, programmable logic devices or the like.

Modules may also be implemented in software for execution by varioustypes of processors. An identified module of executable code may, forinstance, comprise one or more physical or logical blocks of computerinstructions which may, for instance, be organized as an object,procedure, or function. Nevertheless, the executables of an identifiedmodule need not be physically located together, but may comprisedisparate instructions stored in different locations which, when joinedlogically together, comprise the module and achieve the stated purposefor the module.

Indeed, a module of executable code may be a single instruction, or manyinstructions, and may even be distributed over several different codesegments, among different programs, and across several memory devices.Similarly, operational data may be identified and illustrated hereinwithin modules, and may be embodied in any suitable form and organizedwithin any suitable type of data structure. The operational data may becollected as a single data set, or may be distributed over differentlocations including over different storage devices, and may exist, atleast partially, merely as electronic signals on a system or network.

Reference throughout this specification to “one embodiment,” “anembodiment,” or similar language means that a particular feature,structure, or characteristic described in connection with the embodimentis included in at least one embodiment of the present invention. Thus,appearances of the phrases “in one embodiment,” “in an embodiment,” andsimilar language throughout this specification may, but do notnecessarily, all refer to the same embodiment.

Reference to a signal bearing medium may take any form capable ofgenerating a signal, causing a signal to be generated, or causingexecution of a program of machine-readable instructions on a digitalprocessing apparatus. A signal bearing medium may be embodied by atransmission line, a compact disk, digital-video disk, a magnetic tape,a Bernoulli drive, a magnetic disk, a punch card, flash memory,integrated circuits, or other digital processing apparatus memorydevice.

Furthermore, the described features, structures, or characteristics ofthe invention may be combined in any suitable manner in one or moreembodiments. In the following description, numerous specific details areprovided, such as examples of programming, software modules, userselections, network transactions, database queries, database structures,hardware modules, hardware circuits, hardware chips, etc., to provide athorough understanding of embodiments of the invention. One skilled inthe relevant art will recognize, however, that the invention may bepracticed without one or more of the specific details, or with othermethods, components, materials, and so forth. In other instances,well-known structures, materials, or operations are not shown ordescribed in detail to avoid obscuring aspects of the invention.

The schematic flow chart diagrams included herein are generally setforth as logical flow chart diagrams. As such, the depicted order andlabeled steps are indicative of one embodiment of the presented method.Other steps and methods may be conceived that are equivalent infunction, logic, or effect to one or more steps, or portions thereof, ofthe illustrated method. Additionally, the format and symbols employedare provided to explain the logical steps of the method and areunderstood not to limit the scope of the method. Although various arrowtypes and line types may be employed in the flow chart diagrams, theyare understood not to limit the scope of the corresponding method.Indeed, some arrows or other connectors may be used to indicate only thelogical flow of the method. For instance, an arrow may indicate awaiting or monitoring period of unspecified duration between enumeratedsteps of the depicted method. Additionally, the order in which aparticular method occurs may or may not strictly adhere to the order ofthe corresponding steps shown.

Referring to FIG. 1, an exemplary computerized network system 100 alsoreferred to as an Ethernet network system is depicted. The networksystem 100 may be configured as a Local Area Network (LAN), a StorageArea Network (“SAN”), Wide Area Network (WAN), the Internet, andIntranet etc. The network system 100 may include a plurality ofcomputing devices 104, 106, and 108, such as computers, servers, storagedevices, subsystems, etc., like IBM data storage devices.

The computing devices 104, 106, and 108 communicate with each other viacommunication lines or cables 102 a, 120 b, 120 c, respectively. Thenetwork system 100 also includes at least one hub and/or switch 110 tofacilitate the management and/or direction of data flow betweencomputing devices 104, 106, 108.

As illustrated in FIG. 1, switch 110 is coupled to switch 120 viacrossover cable 122. Switch 120 may also be attached to other devices150, such as edge devices, depending on the size of the network system100. The edge devices 150 may be other computing devices, such ascomputers, servers, storage devices, etc. Switch 110 is also coupled tocomputing devices 104, 106, 108 via cables 120 a, 120 b, and 120 c,respectively. The switch 110 may direct or steer data flow, such asinformation packets like Ethernet packets, between the attachedcomputing devices 104, 106, 108. Switch 120 may also direct data flow,such as Ethernet packets, to other devices or switches attached tonetwork system 100.

FIG. 2 depicts an exemplary embodiment to inject noise in a computerizedsystem in accordance with the present invention. The exemplaryembodiment may be configured as apparatus 200. Apparatus 200 may beimplemented, for example, in network system 100 as illustrated inFIG. 1. Accordingly, description of the apparatus 200 refers to elementsof FIG. 1, like numbers referring to like elements.

In one embodiment, apparatus 200 is deployed as part of a system test ofa SAN system 100. As such, the apparatus 200 injects noise onto the SANsystem 100 to simulate and verify the system impact of having a marginalcable. For example, apparatus 200 may simulate a faulty cable in anRJ-45 Ethernet based network, such that noise is injected by apparatus200 onto one of the interface cables that connects two subsystems withinthe system. In this configuration, apparatus 200 allows testing andverifying that the storage subsystem is operable to detect, isolate, andhandle disruptions in the information stream. Thus, maintaining theintegrity of data being communicated between storage subsystems, such asstorage subsystems 104, 106, 106. In one embodiment, storage subsystems104, 106, 106 comprise an enterprises storage system (“ESS”), such asthe TotalStorage® Enterprise Storage Server® from IBM®,).

As illustrated in FIG. 2, apparatus 200 comprises an Ethernet noiseinjector 220. The Ethernet noise injector 220 may be inserted into anEthernet network system, such as the network system 100. The Ethernetnoise injector 220 is coupled to Ethernet switch 110 and computingdevice 108 via Ethernet cables 120 c, 120 d, respectively. Likewise,Ethernet noise injector 220 may be coupled to Ethernet cables 120 a,and/or 120 b, such that Ethernet traffic traveling between switch 110and computing devices 104, 106, travel through Ethernet noise injector220. Similarly, Ethernet noise injector 220 may be coupled to Ethernetcable 122, such that Ethernet traffic traveling between switches 110,120 travel through Ethernet noise injector 220. Accordingly, theEthernet noise injector 220 may be coupled to Ethernet network 100 asneeded to test any one portion and/or the whole system.

For example, Ethernet noise injector 220 is configured such that inoperation, the network traffic and/or information packets (e.g.,Ethernet packages) traveling between Ethernet switch 110 and computingdevice 108 also travel through Ethernet noise injector 220. The Ethernetnoise injector 220 acts as a pass through device. As such, noise isinjected by Ethernet noise injector 220 onto any one of the interfacecables 120 a, 120 b, 120 c, that connects two subsystems (e.g., devices104, 106, 108) while the network system 100 is active and operational.By injecting noise, apparatus 200 disrupts the information stream in thenetwork without the need to pull an Ethernet cable. The disruption ofthe information stream by apparatus 200 simulates a marginal cable or apulling of a cable within the network during a systems test. This allowsverification that the subsystems are operating properly to detect,isolate, and handle the noise.

In certain embodiments, apparatus 200 is deploy as part of a system testto simulate the pulling of a cable to verify the system can handleinadvertent and intentional re-cabling while the system is active.Accordingly, apparatus 200 provides a cost efficient manner to verifythat a subsystem (e.g., 104, 106, and 108) can detect, isolate, andhandle the noise. In certain embodiments, subsystems 104, 106, 108 arecomputer workstations such as IBM X-Series, storage subsystems such asIBM's DS8000 disk storage subsystem, and enterprise-class processorsubsystems such as IBM's Z-Series computers.

FIG. 3 illustrates an exemplary embodiment of apparatus 200 inaccordance with the present invention. Apparatus 200 includes Ethernetnoise injector card 220 configured to inject noise onto a communicationor data link/cable, such as Ethernet cables 120 a, 120 b, 120 c, 120 d(FIGS. 1 and 2). In certain embodiments, the Ethernet noise injector 220is coupled to a SAN system comprising at least one enterprises storagesystem (“ESS”), such as the TotalStorage® Enterprise Storage Server®from IBM®.

As illustrated in FIG. 3, the Ethernet noise injector 220 comprises aswitch 340, at least two Ethernet connectors, ports, or jacks 320, 322,and a plurality of signal wires 330, 332, 334, and 336, which couple theswitch 340 to Ethernet jacks 320, 322. In certain embodiments, the jacks320, 322 comprise an RJ45 jack. In one embodiment, jacks 320, 322 areconfigured as RJ45 jack with a T-configuration.

The Ethernet noise injector 220 includes a parallel port or connector324, such as a PC port or DB25 connector, coupled to switch 340 viabuffer 326 and switch control signal wire 328. A switch control signalcommunicates (via switch control signal wire 328) to switch 340 toactivate and deactivate switch 340. The activation and deactivation ofswitch 340, connects or disconnects wire 336 a and 336 b. For example,when switch 340 is in the “on” position, wire 336 a is connected to wire336 b such that an electronic signal travels from jack 320 to jack 322.Similarly, when the switch is in the “off” position, wire 336 a isdisconnected from wire 336 b such that there is no electronic signaltraveling between jack 320 and jack 322. In certain embodiments, theswitch 340 includes an analog switch. In other embodiments, the switch340 includes a digital switch.

In certain embodiments, Ethernet noise injector 220 comprises a powerconnector 344 to supply electrical power to apparatus 200. The powerconnector 344 may include a 5 volt power connector. In certainembodiments, power is supplied to Ethernet noise injector 220 via Powerover Ethernet (hereinafter PoE). In other embodiments, power is suppliedto Ethernet noise injector 220 via an internal or external batterysource. In certain embodiments, the power connector 344 is configured toplug into a power supply, such as an AC/DC adapter.

In certain embodiments, the Ethernet noise injector 220 is configured asa small electronic card with at least two Ethernet ports 320, 322 thatlink to the system Ethernet connection undergoing testing (e.g., seeFIG. 2). To control the noise injection timing and duration, the PCparallel port 324 with a simple user application is used. For example,one side of the differential signal is electronically disconnected viaanalog switch 340, and the other three signals are left intact (see FIG.3). This allows the receiving interface to see state transitions on theinterface, so it does not perceive a disconnection, but the data streamis corrupted. To simulate a disconnection, all four signals aredisconnected electronically (e.g., see. FIG. 4).

In certain embodiments, Ethernet injector card 220 may be included orembedded in a switch, hub, jack, or any other connection device capableof connecting to an Ethernet cable. For example, the Ethernet injectorcard 220 may be included or embedded as part of the Ethernet switch 110such that network Ethernet traffic between the Ethernet switch 110 andcomputing device 108 travels through the Ethernet injector card 220.Similarly, Ethernet injector card 220 may be included as part of any oneof the computing devices 104, 106, 108 such that network Ethernettraffic traveling between the Ethernet switch 110 and the computingdevices 104, 106, 108 travels through the Ethernet injector card 220. Incertain embodiments, computing devices 104, 106, 108 are storagesubsystems, of a SAN network 100.

Referring again to FIG. 3, in operation, an Ethernet jumper cable, suchas Ethernet cable 120 c, is plugged into or connected to RJ45 jack 320.Ethernet signals TX+, TX− and RX+ are directly connected between RJ45jack 320 and RJ45 jack 322, via wires 330, 332, and 334, respectively,so that they transmit these signals unaltered. Signal RX− from RJ45 jack320 is connected to analog switch 340 via wire 336 a, and the other sideof analog switch 340 is connected to RJ45 jack 322 via wire 336 b. Thesignal RX− is connected and disconnected via analog switch 340. Hence,signal RX− is controlled by engaging and disengaging analog switch 340.

The activation of analog switch 340 may be controlled by control signal328. Control signal 328 is substantially buffered by buffer 326. Theunbuffered control signal is generated by a parallel port, such as a PCparallel port, connected to a connector 324, such as a DB25 femaleconnector. The connection and disconnection of signal RX− is thuscontrolled via the parallel port. In alternate embodiments, controlsignal 328 may be generated via other common computer interfaces, suchas USB, RS-232, FireWire, etc. The RJ45 jack 322 is connected to asubsystem (e.g., storage subsystem 108) via cable, such as Ethernetjumper cable 120 d, to complete the network 100. Power to analog switch340 and buffer 326 may be provided externally from power connector 344.For example, an external 5V power supply 344 may provide power to analogswitch 340. Alternatively, power to activate the analog switch 340 maybe provide via Power over Ethernet (hereinafter “PoE”).

In certain embodiments, the Ethernet noise injector 220 is configured toperform fault simulations on active systems. For example, Ethernet noiseinjector 220 performs fault simulations by simulating a marginal cable,a cable disconnection and/or re-cabling during operation of a system.Thus, the Ethernet noise injector 220 allows a cost-effective andeconomical diagnostic testing of an active and intact computing networksystem to verify performance parameters or to identify potential problemareas.

FIG. 4 illustrates another exemplary embodiment of apparatus 200 inaccordance with the present invention. The exemplary apparatus 200comprises an Ethernet noise injector card 420. In certain embodiments,the Ethernet noise injector 420 is configured as a link pull simulator.

The Ethernet noise injector 420 includes at least two jacks 320, 322, aplurality of switches 440, and a plurality of signal wires 330 a, 332 a,334 a, 336 a connecting the jacks 320, 322 to the switches 440. In oneembodiment, jacks 320, 322 include RJ45 jacks and signal wires includefour signal wires TX+ 330 a, TX− 332 a, RX+ 334 a, and RX− 336 a.

The Ethernet noise injector 420 includes a parallel port or connector324, such as a PC port or DB25 connector, coupled to switches 440 viabuffer 326 and switch control signal wire 328. A switch control signalcommunicates (via switch control signal wire 328) to switches 440 toactivate and deactivate switches 440. In certain embodiments, theswitches 440 include analog switches. In other embodiments, the switches440 include digital switches. In one embodiment, connector 324 is a DB25female connector

As illustrated in FIG. 4, switches 440 are configured as a bank ofswitches in which four signal wires TX+ 330 a, TX− 332 a, RX+ 334 a, andRX− 336 a connect one side of the bank of switches 440 to jack 320.Also, the four signal wires TX+ 330 b, TX− 332 b, RX+ 334 b, and RX− 336b connect the other side of the bank of switches 440 to jack 322.

In certain embodiments, Ethernet noise injector 420 comprises a powerconnector 344 that supplies electrical power to apparatus 200. The powerconnector 344 may include a 5 volt power connector. In certainembodiments, power is supplied to Ethernet noise injector 420 via Powerover Ethernet (hereinafter PoE). In other embodiments, power is suppliedto Ethernet noise injector 420 via an internal or external batterysource. In certain embodiments, the power connector 344 is configured toplug into a power supply, such as an AC/DC adapter.

In operation, an electrical or communication signal travels between jack320 and jack 322 via the four signals TX+ 330, TX− 332, RX+ 334, and RX−336. The signal traveling between jack 320 and jack 322 may beinterrupted by activating and deactivating switches 440. For example,when switches 440 are in an “on” position, the signal travels betweenjacks 320, 322. When the switches 440 are in an “off” position, thesignal between jacks 320, 322 is interrupted. Hence, there are nosignals being transmitted through the bank of analog switches 440.

In one embodiment, when the switches 440 are in the “on” position, theEthernet noise injector 420 appears as a straight cable between theswitch 110 and the storage subsystem 108 (see e.g., FIG. 2). When theswitches 440 are in the “off” position, because all four signals aredisconnected substantially simultaneously, it appears to the storagesubsystem 108 as though the connection has been lost via a cable pull.Thus, in one embodiment, the Ethernet noise injector 420 simulates alink pull.

In one embodiment, at least one of the switches 440 may be activatedbetween the on/off positions by control signal 328. At least one of thesignal wires 330, 332, 334, 336, may be interrupted via one of theswitches 440. For example, switch control signal 328 may signal an “off”position to one of the switches 440 such that only wire 330 a and wire330 b are disconnected. In another embodiment, switch control signal 328may comprise multiple wires, each wire controlling a separate switch,such that any or all of multiple wires 330 a and 330 b, 332 a and 332 b,334 a and 334 b, and 336 a and 336 b may be separately or collectivelyswitched “on” and “off” to simulate different failure modes.

FIG. 5 is a schematic flow chart diagram illustrating certainembodiments of a method 500 to inject noise in a system to simulate amarginal cable or cable pull. Method 500 may be implemented in a networksystem, such as system 100 in FIG. 2. In certain embodiments, method 500may be implemented in an apparatus, such as apparatus 200 in FIGS. 3 and4.

Referring to FIG. 5, method 500 provides 510 a noise injector cardcomprising at least one switch and at least two jacks or ports. In oneembodiment, the noise injector card corresponds to apparatus 220 (FIG.3). In another embodiment, the noise injector card corresponds toapparatus 420 (FIG. 4).

The noise injector card is connected 520 to a link or cable of anetwork. For example, the noise injector card is connected to Ethernetcables 120 c and 120 d as shown in FIG. 2. A control signal is received530 to activate the noise injector card. For example, the control signalis received through a port, such as parallel port 324 (FIGS. 3 and 4).The control signal travels through buffer 326 along switch controlsignal wire 328 (e.g., FIGS. 3 and 4).

At least one switch of the noise injector card is switch 540 between“on/off” positions to disrupt at least one signal traveling on at leastone electrical wire of the noise injector card. In certain embodiments,the switch corresponds to switch 340 where electrical wire 336 a and 336b is connected and disconnected by switch 340 (e.g., see FIG. 3). Incertain embodiments, the switch corresponds to switches 440 where atleast one of the switches 440 is turned on or off to connect ordisconnect an electrical signal traveling on at least one electricalwire 330, 332, 334, and 336 (e.g., see FIG. 4).

The noise injector card injects 550 noises onto a link or cable of acomputerized network. For example, in one embodiment, method 500electronically disconnects one side of the differential signal byswitching an analog switch such that the other three signals are leftintact (e.g., FIG. 3). Illustratively referring to FIG. 2, Ethernettraffic is sent from computer subsystem 108 to Ethernet switch 110through Ethernet Noise Injector 220. When the Ethernet Noise Injector220 is “off”, Ethernet traffic travels through said injector fromcomputer subsystem 108 to Ethernet switch 110 uninterrupted. WhenEthernet Noise Injector 220 is “on”, one wire 336 a/336 b is disruptedby Ethernet Noise Injector 220 and does not pass half of thedifferential Ethernet signal. Because Ethernet is a level-basedtechnology, the fact that the other half of the differential signalcarried by wire 334 is successfully transmitted from computer subsystem108 to Ethernet switch 110 means that Ethernet switch 110 detects leveltransitions and does not perceive that the connection has been broken,but because the data transitions are incorrect due to the disconnectedwires 336 a and 336 b, the data is corrupted. The injection of noise bymethod 500 allows computer subsystem 108 to resend the information thatwas interrupted previously by the Ethernet Noise Injector once theinjector is turned “off”, testing the network system's ability torecover from temporary interface errors.

In certain embodiments, method 500 injects 550 noises to simulate adisconnection or cable pull by electronically disconnecting all foursignals. For example, as illustrated in FIG. 4, a bank of analogswitches 440 are connected to four signal wires 330, 332, 334, and 336such that any one of the signals or combinations thereof, aredisconnected by switching the bank of switches 440.

FIG. 6 is a schematic flow chart diagram illustrating certainembodiments of a method 600 to deploy a system test for verifying theimpact of having a marginal Ethernet cable or cable pull. Method 600 maybe deployed in a network system, such as system 100 in FIG. 2. Incertain embodiments, method 600 may be implemented in an apparatus, suchas apparatus 200 in FIGS. 3 and 4.

Referring to FIG. 6, method 600 provides an Ethernet network having anEthernet infrastructure. In one embodiment, the Ethernet networkcorresponds to network 100 (FIGS. 1 and 2). A noise injector card isembedded 610 in the Ethernet infrastructure. The Ethernet infrastructureincludes at least one of a switch, a computing device, and a host busadapter. For example, the noise injector card is embedded in an existingEthernet infrastructure such as Ethernet host bus adapter (HBA),switches, hubs, or combinations thereof (FIGS. 1 and 2). In certainembodiments, the embedded noise injector card corresponds to noiseinjector card 220 or 420 (e.g., FIGS. 3 and 4).

In one embodiment, HBA represents an outgoing interface of a computingdevice 104, 106, 108 (e.g., FIGS. 1 and 2). The switches and/or hubs110, 120 are used to interconnect the computing devices 104, 106, 108among each other and end-point devices 150, such as storage systems(FIGS. 1 and 2).

In one embodiment, the HBA is connected to a storage system directlywithout a switch or hub. In this embodiment, the storage system includesthe HBA, which is used to connect the storage system to other storagesystems directly or via hubs and switches. For example, computing device108 may comprise a storage system comprising a HBA, which connectsdevice 108 to Ethernet jumper cable 120 c (FIG. 1). In thisconfiguration, because the noise injector card is embedded in the HBAthere is no need to connect apparatus 200 with Ethernet jumper cable 120c and 120 d, as shown in FIG. 2.

A request is sent 630 for a license key to activate the embedded noiseinjector card. For example, a requester, such as a customer or user,sends 630 a request to a supplier, such as IBM. The supplier supplies640 the license key to the requester. The license key is entered 650into the Ethernet infrastructure.

Once the license key is entered, the embedded noise injector card isactivated 620. At least one switch of the embedded noise injector cardis switch 670 to connect or disconnect one or more electricalwires/lines. The electrical wires/lines carry an electrical signal(e.g., FIGS. 3 and 4). In certain embodiments, the electronic signal maybe communicating data and information to be stored and retrieved fromstorage subsystems 104, 106, 108 in the Ethernet network 100 (FIGS. 1and 2). In certain embodiments, storage subsystems 104, 106, 108comprise ESS.

In certain embodiments, the activation of the noise injector card may bedone externally or by management software. For example, control software(which exists on one of the computer systems present on the Ethernetinterface) may loop through a continuous sequence of writing a registerthat activates the control signal, waiting a predetermined time, thenagain writing said register with a different value that deactivates thecontrol signal. Alternatively, the computer system may send a specialEthernet packet to the embedded Ethernet Noise Injector card thatactivates or deactivates the switches.

In certain embodiments, the activation of the embedded noise injectorcard is done via the license key. For example, a customer or user mayobtain a license key from a supplier or vendor. In one embodiment, IBMsupplies the license key to activate the embedded noise injector card.The user enters the license key into the Ethernet infrastructure beingtested. Once the license key is entered, the embedded noise injectorcard is activated. The license key may be entered in accordance withstandard methods, such as management and configuration interfaces. Forinstance, the configuration software (which may be use to set upEthernet switches in the network as known in the art) may also be usedto configure and run the Ethernet Error Injector when an optionallicense code is entered.

As described, in certain embodiments, method 500 or 600 maybe deployedas part of a complete system test of IBM storage systems or products toverify the system impact of having a marginal Ethernet cable in ourstorage systems. By deploying method 500 or 600, the noise injector card(e.g., apparatus 200; FIGS. 3 and 4) injects noise into a link/cablesuch that the system is still intact; i.e., the cable is not pulled, butthe information stream is disrupted. The injection of noise into thecable simulates the pulling of the cable to verify that the system canhandle inadvertent and intentional re-cabling while the system isactive. In certain embodiments, methods 500 and 600 provides a reliable,cost effective manner to perform fault simulations and determine whichEthernet devices (e.g., 104, 106, and 108) are not performing properlywhile the system 100 is active and intact.

As FIGS. 1-6 illustrate, the present invention provides a method andapparatus to inject Ethernet noise into a computerized network system,such as IBM X-Series, P-Series, Z-Series, and I-Series computer systems.Also, as depicted in FIGS. 1-6, embodiments of the present inventionfacilitate simulating a faulty and/or marginal cable in an Ethernetbased network while the system, such as a storage system, is intact andactive.

For example, certain embodiments of the present invention are configuredto inject noise onto one of the interface cables that connects at leasttwo subsystem within the storage system (see e.g., FIGS. 1-6). Thisallows one to verify that the subsystem can detect, isolate, and handlethe noising be injected by the present invention.

1. An apparatus to inject noise onto a cable of a network, the apparatuscomprising: at least two jacks; a plurality of signal wires connectingthe two jacks together; a switch connected to the two jacks by at leastone of the plurality of signal wires; a parallel port connected to theswitch via a control signal wire; and a power connector connected to theswitch, wherein a control signal activates the switch, and the timingand duration of the control signal is controlled to electronicallydisconnect a differential signal in the signal wires via an analogswitch.
 2. The apparatus of claim 1, further comprising a buffer tobuffer a control signal of the control signal wire.
 3. The apparatus ofclaim 1, wherein the plurality of wires comprises a first signal wireRX+, a second signal wire RX−, a third signal wire TX+, and a fourthsignal wire TX−.
 4. The apparatus of claim 3, wherein the second signalwire RX− is connected to the switch.
 5. The apparatus of claim 1,wherein the two jacks comprise a RJ45 jack.
 6. The apparatus of claim 1,wherein the switch comprises an analog switch.
 7. The apparatus of claim1, wherein the switch comprises a digital switch.
 8. The apparatus ofclaim 1, wherein power is supplied to the apparatus via Power overEthernet.
 9. The apparatus of claim 1, wherein the parallel portcomprises a DB25 connector.
 10. An apparatus to inject noise onto acable of a network, the apparatus comprising: at least two ports; aplurality of signal wires connecting the two ports together; and aplurality of switches connected to the two ports by the plurality ofsignal wires, wherein a control signal activates one of the switches toinject noise in the network, and the timing and duration of the controlsignal is controlled to electronically disconnect a differential signalin the signal wires via an analog switch.
 11. The apparatus of claim 10,further comprising a parallel port connected to the switch via a controlsignal wire.
 12. The apparatus of claim 11, further comprising a bufferto buffer a control signal of the control signal wire.
 13. The apparatusof claim 10, further comprising a power connector connected to theswitch.
 14. The apparatus of claim 10, wherein the plurality of wirescomprises a first signal wire RX+, a second signal wire RX−, a thirdsignal wire TX+, and a fourth signal wire TX−.
 15. A method to injectnoise onto a communication link of a network, the method comprising:providing a noise injector card; connecting the noise injector card to alink of a network; receiving a control signal to activate the noiseinjector card; injecting noise onto the link of the network; andcontrolling the timing and duration of the control signal toelectronically disconnect a differential signal in the communicationlink via an analog switch.
 16. The method of claim 15, furthercomprising switching at least one switch of the noise injector card. 17.The method of claim 15, further comprising supplying power to the noiseinjector card.
 18. A method to inject noise in a network, the methodcomprising: proving an Ethernet network having an Ethernetinfrastructure; embedding a noise injector card in the Ethernetinfrastructure; entering a license key into the Ethernet infrastructure;activating the embedded noise injector card with a control signal,wherein the timing and duration of the control signal is controlled toelectronically disconnect a differential signal in the network via ananalog switch; and injecting noise onto the Ethernet infrastructure. 19.A method of claim 18, further comprising sending a request for thelicense key.
 20. The method of claim 19, further comprising supplyingthe license key to a requestor.
 21. The method of claim 20, furthercomprising entering the license key into the Ethernet infrastructure.22. The method of claim 18, further comprising switching at least oneswitch in the embedded noise injector card to disrupt at least onesignal traveling on an Ethernet link.